In recent years, with the increase in speed of processing by micro computers and the increase in storage capacity of nonvolatile semiconductor storage devices, there has been a strong demand for high-speed rewriting of a nonvolatile semiconductor storage device.
The following is a commonly-used method of rewriting flash memory: reading out the data of memory cells at the start of rewriting for verifying the write condition of the memory cells; and then erasing or rewriting the memory cells. Employing the method decreases the number of erasing flash memory and the number of program executions, enhancing endurance characteristics. Besides, as for a memory cell in which an expected value has already been written at the start of rewriting, no rewriting voltage is applied, which contributes to enhanced data-retention characteristics.
For example, according to Patent Literature 1, prior to rewriting flash memory, as for a flash memory cell with no need for pre-writing and erasing before data writing, they are omitted. This allows the number of rewriting data to delay reaching a limit value, suppressing degradation of reliability and decreasing the average time required for rewriting data.